class Solution {
    public int majorityElement(int[] nums) {
        int count = 0; // 计数器
        Integer num = null; // 用来存放此时占上风的数字
        for (int i : nums) {
            if (count == 0) num = i; // 确定此时占上风的数字
            count += num == i ? 1 : -1; // 竞争
        }
        // 最多的那个数字一定是最后的赢家，因为这个最多的数字出现的次数超过了总数字的一半
        return num;
    }
}

// 